package pda.ancien;

import java.io.Serializable;

/**
 * <h1>Classe Rdv.</h1>
 * Cette classe décrit une activite de type Rdv. 
 * Elle hérite de Activite et définit un parametre supplémentaire qui la diffère d'Activite. 
 * Elle definit un initiateur en plus des parametres de base definis dans Activite
 * Cette classe comprend donc les même propriétés que Activites en implémentant Comparable et Serializable.
 * @author Mathieu Cornic
 * @author Camille Guerin
 * A rendre Jeudi 19 juin 2008
 */
public class Rdv extends Activite implements Comparable<Activite>, Serializable{
	
    private static final long serialVersionUID = 1L;//numero de version de la classe
	
    private String initiateur;//variable supplémentaire à Activite qui definit un Rdv
	
    /**
     * Constructeur de la classe.
     * Il permet de definir un rdv en fonction des parametres voulus (initiateur est en supplément d'Activite)
     * Ces parametres seront utilises ensuite dans le reste de la classe
     * @param id l'identifiant du rdv (unique)
     * @param motif le motif du rdv
     * @param heureDebut l'heure de debut du rdv
     * @param heureFin l'heure de fin du rdv
     * @param minuteDebut la minute de debut du rdv
     * @param minuteFin la minute de fin du rdv
     * @param jour le jour du rdv
     * @param mois le mois du rdv (entier)
     * @param annee l'annee du rdv
     * @param lieu le lieu du rdv
     * @param type le type du rdv
     * @param initiateur l'initiateur du rdv
     */
    public Rdv (int id, String motif, int heureDebut, int heureFin, int minuteDebut, int minuteFin, int jour, int mois, int annee, String lieu, String type, String initiateur) {
		
	super (id, motif, heureDebut, heureFin, minuteDebut, minuteFin, jour, mois, annee, lieu, type);// on utilise le constructeur de base d'Activite
	//et on defini la nouvelle variable
	this.initiateur = initiateur;
    }
	
    /**
     * Getter qui renvoit l'initiateur de l'activite
     * @return l'initiateur de l'activite
     */
    public String getInitiateur () {
	return initiateur;
    }
	
    /**
     * Setter qui remplace l'initiateur de l'activite par celui passe en parametre
     * @param initiateur le nouvel initiateur
     */
    public void setInitiateur (String initiateur) {
	this.initiateur = initiateur;
    }
	
    /** 
     * Methode qui permet de convertir dans un String, tous les parametres d'une Activite
     * @return le string contenant tous les parametres
     */
    public String toString () {
	String s = super.toString ()+";"+initiateur;
	return s;
    }

}
